import axios from "axios";
import config from '../config/indext.js'
//判断当前的环境
const baseUrl = process.env.NODE_ENV === 'development' ? config.baseURL.dev : config.baseURL.pro
console.log(baseUrl);
class HttpRequest {
  constructor(baseURL) {
    this.baseUrl = baseURL
  }
  getInsideConfig() {
    const config = {
      baseURL: this.baseUrl,
      header: {

      }

    }
    return config
  }
  interceptors(instance) {
    // 添加请求拦截器
    instance.interceptors.request.use(function (config) {
      // 在发送请求之前做一些事情
      return config;
    },
      function (error) {
        // 做一些请求错误的事情
        return Promise.reject(error);
      });
    // 添加响应拦截器
    instance.interceptors.response.use(function (response) {
      // 对响应数据执行操作
      return response;
    },
      function (error) {
        // 对响应错误执行操作
        return Promise.reject(error);
      });


  }
  request(options) {
    const instance = axios.create()
    options = { ...this.getInsideConfig(), ...options }
    this.interceptors(instance)
    return instance(options)
  }
}
export default new HttpRequest